<?php 
	session_start();
	
	$currentUser = null;
	
	// если id пользователя не занесён в сессию
	if (!isset($_SESSION['USERID'])) {
	
		// если стоит кука "Запомнить меня"
		if (isset($_COOKIE['USERID'])){
			$userId = $_COOKIE['USERID'];
			$currentUser = StudentTable::getInstance()->findStudentById($userId);

			$_SESSION['USERID'] = $userId;			
		}		
		// если пользователь пытается авторизоваться
		elseif (isset($_REQUEST['login']) && isset($_REQUEST['password'])){
			
			// ищем пользователя в БД
			$userId = StudentTable::getInstance()->findStudentId(trim($_REQUEST['login']), trim($_REQUEST['password']));
			$currentUser = StudentTable::getInstance()->findStudentById($userId);

			// пишем id пользователя в сессию
			if ($userId) {
				$_SESSION['USERID'] = $userId;
			
				// если выбран флажок "Запомнить меня"
				if (isset($_REQUEST['remember_me'])){
					//ставим куку на 30 дней
					setcookie('USERID', $userId, time()+3600*24*30);
				}
			}
		}		
		
	} else {
		// ищем пользователя в БД
		$currentUser = StudentTable::getInstance()->findStudentById($_SESSION['USERID']);
		
		// если пользователь пытается разлогиниться	
		if (isset($_REQUEST['exit'])) {
			// убиваем сессию
			session_destroy();
			
			// удаляем куку
			setcookie('USERID', $userId);
			
			// перезагружаем страницу
			header('Location: '. $_SERVER[PHP_SELF]); 
		}
	} 
?>

